Skip to content

Add function to clean up and re-evaluate stream SAC group#15731

Merged
acogoluegnes merged 1 commit intomainfrom
stream-evaluate-sac-group-function
Mar 18, 2026
Merged

Add function to clean up and re-evaluate stream SAC group#15731
acogoluegnes merged 1 commit intomainfrom
stream-evaluate-sac-group-function

Conversation

@acogoluegnes
Copy link
Copy Markdown
Contributor

@acogoluegnes acogoluegnes commented Mar 13, 2026

The function is meant to be used by an operator as a last resort to clean up a consumer group from "ghost" consumers and unblock the group.
At this point the SAC coordinator should work as expected but an upgrade from a version with known issues can end up with blocked groups. So this function should help unblock the groups manually.

It can be called like this:

rabbitmqctl eval 'rabbit_stream_coordinator:evaluate_sac_group(<<"/">>,
                                                               <<"stream-0">>,
                                                               <<"app1">>).'

The actual call is hidden behind the 4.3.0 feature flag. This ensures all the nodes have been upgraded and are using the latest machine version.

References rabbitmq/rabbitmq-stream-dotnet-client#447

@acogoluegnes acogoluegnes added this to the 4.3.0 milestone Mar 13, 2026
@acogoluegnes acogoluegnes modified the milestones: 4.3.0, 4.4.0 Mar 18, 2026
@acogoluegnes acogoluegnes force-pushed the stream-evaluate-sac-group-function branch from f06a21d to c62ee03 Compare March 18, 2026 07:41
@acogoluegnes acogoluegnes force-pushed the stream-evaluate-sac-group-function branch 3 times, most recently from 04db5f6 to d62546a Compare March 18, 2026 10:06
Comment thread deps/rabbit/src/rabbit_stream_sac_coordinator.erl
The function is meant to be used by an operator as a last resort to
clean up a consumer group from "ghost" consumers and unblock the group.

At this point the SAC coordinator should work as expected but an upgrade
from a version with known issues can end up with blocked groups. So this
function should help unblock the groups manually.

It can be called like this:

rabbitmqctl eval 'rabbit_stream_coordinator:evaluate_sac_group(<<"/">>,
                                                               <<"stream-0">>,
                                                               <<"app1">>).'

The actual call is hidden behind the 4.3.0 feature flag. This ensures
all the nodes have been upgraded and are using the latest machine
version.

References rabbitmq/rabbitmq-stream-dotnet-client#447
@acogoluegnes acogoluegnes force-pushed the stream-evaluate-sac-group-function branch from d62546a to 98bbcdb Compare March 18, 2026 12:26
@acogoluegnes acogoluegnes marked this pull request as ready for review March 18, 2026 13:18
@acogoluegnes acogoluegnes merged commit a9094b7 into main Mar 18, 2026
184 checks passed
@acogoluegnes acogoluegnes deleted the stream-evaluate-sac-group-function branch March 18, 2026 13:19
acogoluegnes added a commit that referenced this pull request Mar 18, 2026
Add function to clean up and re-evaluate stream SAC group (backport #15731)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants